/**
 * Copyright (C), 2015-2021, XXX有限公司
 * FileName: XjfWorkOrderResult
 * Author:   Administrator
 * Date:     2021/8/6 0006 11:09
 * Description: 返回实体
 * History:
 * <author>          <time>          <version>          <desc>
 * 作者姓名           修改时间           版本号              描述
 */
package cn.hxlc.tie.demo.modular.jf.model.result;

import cn.hxlc.tie.demo.core.enums.ProductionEnum;
import cn.hxlc.tie.demo.core.enums.WorkOrderEnum;
import cn.hxlc.tie.libs.scanner.stereotype.EntityResource;
import com.alibaba.fastjson.annotation.JSONField;
import com.alibaba.fastjson.serializer.SerializerFeature;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.util.Date;
import java.util.List;

/**
 * 〈一句话功能简述〉<br> 
 * 〈返回实体〉
 *
 * @author jf.xu
 * @create 2021/8/6 0006
 * @since 1.0.0
 */
@Data
@ApiModel
@EntityResource(entityName = "jf生产订单",enableTagPrint = true)
public class XjfWorkOrderResult implements Serializable {

    private static final long serialVersionUID = 1L;


    @ApiModelProperty("ID")
    private Long fid;

    @ApiModelProperty("编码")
    private String fnumber;

    @JSONField(serialzeFeatures= SerializerFeature.WriteEnumUsingToString)
    @ApiModelProperty("订单状态")//0:暂存,1:审核,2:下达,3:手工关闭,4:自动关闭
    private WorkOrderEnum fstatus;

    @ApiModelProperty("第三方id")
    private Long foid;

    @ApiModelProperty("业务日期")
    private Date fbizdate;

    @ApiModelProperty("车间")
    private Long ffactoryid;

    @ApiModelProperty("客户")
    private Long fcustomerid;

    @ApiModelProperty("客户名称")
    private String fcustomername;

    @JSONField(serialzeFeatures= SerializerFeature.WriteEnumUsingToString)
    @ApiModelProperty("生产类型")//0:自制成品、1:自制半成品、2:受托加工、3:研发、4:其他
    private ProductionEnum ftype;

    @ApiModelProperty("下达时间")
    private Date ftransmittime;

    @ApiModelProperty("关闭原因")
    private String fclosereason;

    @ApiModelProperty("关闭时间")
    private Date ffinishtime;

    @ApiModelProperty("备注")
    private String fdescription;

    @ApiModelProperty("创建人")
    private Long fcreatorid;

    @ApiModelProperty("创建时间")
    private Date fcreatetime;

    @ApiModelProperty("产品分录")
    private List<XjfWorkOrderEntryResult> entrys ;

}
